It has become common for users of client computers connected to the World Wide Web (the “Web”) to employ Web browsers and search engines to locate Web pages having content of interest. A search engine, such as Digital Equipment Corporation's AltaVista search engine, indexes hundreds of millions of Web pages maintained by server computers all over the world. The users compose queries to specify a search topic, and the search engine identifies pages having content that satisfies the queries, e.g., pages that match on the key words of the queries. These pages are known as the result set.
In many cases, particularly when a query is short or not well defined, the result set can be quite large, for example, thousands of pages. For this reason, most search engines rank order the result set, and only a small number, for example twenty, of the highest ranking pages are actually returned at a time. Therefore, the quality of search engines can be evaluated not only on the number of pages that are indexed, but also on the usefulness of the ranking process that determines which pages are returned.
Sampling of search engine operation has shown that most queries tend to be quite short, on the average about 1 to 2 words. Therefore, there is usually not enough information in the query itself to rank the pages of the result set. Furthermore, there may be pages that are very relevant to the search that do not include the specific query words. This makes ranking difficult.
In Information Retrieval, some approaches to ranking have used relevance feedback supplied by users. This requires the user to supply feedback on the relevance of some of the results that were returned by the search in order to iteratively improve ranking. However, studies have shown that users of the Web are reluctant to provide relevance feedback.
In one prior art technique, an algorithm for connectivity analysis of a neighborhood graph (n-graph) is described, J. Kleinberg, “Authoritative Sources in a Hyperlinked Environment,” Proc. 9th ACM-SIAM Symposium on Discrete Algorithms, 1998, and also in IBM Research Report RJ 10076, May 1997. The algorithm analyzes the link structure, or connectivity of Web pages “in the vicinity” of the result set to suggest useful pages in the context of the search that was performed.
The vicinity of a Web page is defined by the hyperlinks that connect the pages. A Web page can point to other pages, and the page can be pointed to by other pages. Close pages are directly linked, farther pages are indirectly linked. These connections can be expressed as a graph where the nodes represent the pages, and the directed edges represent the links.
Specifically, the algorithm attempts to identify “hub” and “authority” pages. Hubs and authorities exhibit a mutually reinforcing relationship, a good hub page is one that points to many good authorities, and a good authority page is pointed to be many good hubs. Kleinberg constructs a graph for a specified base set of hyperlinked pages. Using an iterative algorithm, an authority weight x and a hub weight y is assigned to each page when the algorithm converges.
When a page points to many pages with large x values, the page receives a large y value and is designated as a hub. When a page is pointed to by many pages with large y values, the page receives a large x value and is designated as an authority. The iterative weights can beranked to compute “strong” hubs and authorities.
However, there are some problems with the Kleinberg's algorithm which is strictly based on connectivity. First, there is a problem of topic drift. For example, a user composes a query including the key words “jaguar” and “car.” The graph will tend to have more pages that talk about “cars” than specifically about “jaguars”. These self-reinforcing pages will tend to overwhelm pages mentioning “jaguar” to cause topic drift.
Second, it is possible to have multiple “parallel” edges connected from a certain host to the same authority or the same hub. This occurs when a single Web site stores multiple copies or versions of pages having essentially the same content. In this case, the single site has undue influence, hence, the authority or hub scores may not be representative.
Therefore, it is desired to provide a method which precisely identifies the content of pages related to a topic specified in a query without having a local concentration of pages influence the outcome.